/**
 * module-info
 */
module cn.huaqingcheng.tianshu.core {
    requires cn.huaqingcheng.tianshu.common.core;
    requires cn.huaqingcheng.tianshu.security;
    requires com.auth0.jwt;
    requires jakarta.annotation;
    requires jakarta.inject;
    requires jakarta.validation;
    requires org.slf4j;
    requires spring.boot;
    requires spring.context;
    requires spring.security.crypto;
    requires spring.tx;
    requires spring.web;
    requires static lombok;
    requires static org.jetbrains.annotations;

    exports cn.huaqingcheng.tianshu.core.auth.jwt to spring.beans, spring.boot, com.fasterxml.jackson.databind;
    exports cn.huaqingcheng.tianshu.core.auth.param;
    exports cn.huaqingcheng.tianshu.core.auth.session;
    exports cn.huaqingcheng.tianshu.core.auth.view;

    exports cn.huaqingcheng.tianshu.core.start.model;
    exports cn.huaqingcheng.tianshu.core.start.param;
    exports cn.huaqingcheng.tianshu.core.start.repository;
    exports cn.huaqingcheng.tianshu.core.start.service;

    exports cn.huaqingcheng.tianshu.core.sys;
    exports cn.huaqingcheng.tianshu.core.sys.adapter;
    exports cn.huaqingcheng.tianshu.core.sys.model;
    exports cn.huaqingcheng.tianshu.core.sys.param;
    exports cn.huaqingcheng.tianshu.core.sys.repository;
    exports cn.huaqingcheng.tianshu.core.sys.service;

    exports cn.huaqingcheng.tianshu.core.uc.dto;
    exports cn.huaqingcheng.tianshu.core.uc.model;
    exports cn.huaqingcheng.tianshu.core.uc.repository;
    exports cn.huaqingcheng.tianshu.core.uc.service;

    opens cn.huaqingcheng.tianshu.core.auth.param;
    opens cn.huaqingcheng.tianshu.core.auth.view;

    opens cn.huaqingcheng.tianshu.core.start.model;
    opens cn.huaqingcheng.tianshu.core.start.param;

    opens cn.huaqingcheng.tianshu.core.uc.dto;
    opens cn.huaqingcheng.tianshu.core.uc.model;
}
